Chapter 9 Main Memory
Chapter 9 Main Memory
Background
基礎硬體
架構
每次的記憶體存取
Address binding
地址綁定
使用者程式的不同階段
- 多數作業系統使用 執行時綁定
物理 跟 邏輯位址的差異
比較
不同時期的差異
Memory-Management Unit (MMU)
硬體
動態分配得過程圖
動態加載
動態連接
- 需要支援
- 需要支援
Swapping
換頁
換頁限制 time cost
Contiguous Memory Allocation
記憶體分配
連續的分配
- 圖
- 圖
例子
找洞策略
三種方式
碎片化 (Fragmentation)
Paging
分頁 (Paging)
paging model
硬體實現
- Example
- 4 byte page
- 4 byte page
如何決定page size
- size
分配frame 給process
分頁的功能與特點
實現頁表 (Implementation of Page Table)
TLB (轉譯後備緩存)
- 硬體架構圖
TLB 未命中 (TLB Miss)
TLB 和上下文切換
有效訪問時間 (EAT) 解釋
記憶體保護
- 有效存取 圖
PTE中的有效/無效位
共享程式碼頁面
Structure of the Page Table
Hierarchical Page Tables
圖
但會增加記憶體存取的次數
Example
64位系統
Hashed Page Tables
- 圖
Inverted Page Table
結構圖
問題
Segmentation
使用者視角
Segmentation 的定義與過程
邏輯視角
Segmentation Hardware 的組成與運作
- 例子
- 優勢
- 挑戰
硬體設計
總結
Example
Examples: Intel and ARM Architectures
- 連接
PAE
Intel x86
ARM
Chapter 9 Main Memory
https://z-hwa.github.io/webHome/[object Object]/Operation Systems/Chapter-9-Main-Memory/